package com.longcai.cm.utils;

import java.io.File;

/**
 * 2017年7月4日 下午6:50:20
 *
 * @author afan
 **/
public class FileUtil {

    /**
     * 创建文件夹
     *
     * @param file
     */
    public static void mkdirs(File file) {
        if (!file.exists()) {
            file.mkdirs();
        } else if (!file.isDirectory()) {
            file.mkdirs();
        }
    }

    /**
     * 创建文件夹
     *
     * @param dirPath
     */
    public static void mkdirs(String dirPath) {
        File file = new File(dirPath);
        if (!file.exists()) {
            file.mkdirs();
        } else if (!file.isDirectory()) {
            file.mkdirs();
        }
        file = null;
    }

    /**
     * 创建上级目录的文件夹
     *
     * @param file
     */
    public static void mkParentDirs(File file) {
        File parentFile = file.getParentFile();
        if (!parentFile.exists()) {
            parentFile.mkdirs();
        } else if (!file.isDirectory()) {
            parentFile.mkdirs();
        }
        parentFile = null;
    }

    /**
     * 创建上级目录的文件夹
     *
     * @param file
     */
    public static void mkParentDirs(String filePath) {
        File file = new File(filePath);
        File parentFile = file.getParentFile();
        if (!parentFile.exists()) {
            parentFile.mkdirs();
        } else if (!file.isDirectory()) {
            parentFile.mkdirs();
        }
        parentFile = null;
        file = null;
    }

    /**
     * 循环删除目录
     *
     * @param dir
     */
    public static void delDir(File dir) {
        if (dir.exists()) {
            File[] childFiles = dir.listFiles();
            for (File file : childFiles) {
                if (file.isFile()) {
                    file.delete();
                } else {
                    FileUtil.delDir(file);
                }
            }
            dir.delete();
        }
    }

    public static void main(String[] args) {
        String filePath = "F:/a/map/";

        delDir(new File(filePath));
    }
}
